1. Field of the Invention
The present invention relates to context information service, and more particularly, to a system and method for determining whether to provide service and a content of the service based on ubiquitous-based context information.
2. Discussion of Related Art
As the information industry and mobile communication technology are being constantly developed, new mobile devices or information consumer-electronic products appear, computer systems are networked for convenience and diversity in people's lives, and communication and computing is possible almost anywhere, at anytime. The computing systems share information and cooperate with one another, resulting in ubiquitous computing phenomenon for new services.
The term ubiquitous means “present everywhere” or “present in several places simultaneously.” In general, ubiquitous refers to natural resources, such as water or air, or gods of a religion existing whenever and wherever, for example. In the field of information and communication technology, the meaning of ubiquitous can include “ubiquitous computing” or “ubiquitous network” as a new IT environment or paradigm. Simply speaking, ubiquitous communication or ubiquitous computing refers to embedding a computer into common objects such as cups, cars, glasses and shoes in order to allow the objects to communicate with one another, not necessarily providing additional functions to a current computer or inserting something into the computer. Convenient and portable post-personal computer (PC) products are systems capable of processing information without restrictions of time and space, such as next-generation information devices including personal digital assistants (PDAs), Internet televisions (TVs), and smart phones, which allow processing of specialized tasks and processing information via a wireless communication network, such as wireless Internet. With the development of related techniques and products, ubiquitous computing is expected to gradually spread. In the future, a computer such as a microprocessor will be embedded in circumferential objects, including cars, glasses, pictures, walls, bottles, drugs, and waste, as well as electronic products, such that computing is non-visually realized through communication and cooperation.
User's circumferential elements, such as current location, ID, computer's unique number, behavior, and task may be called an object. Further, information about a user or a user's object and a change in the information may be called a context. For example, information needed for computing from a user circumference such as personal information, current time, season, and temperature may be called a context. A process of obtaining such context information from the user circumference is called context-awareness. When objects are discovered, context information obtained from the objects may be used by a current system or may be stored in a server or used at other places via a network. The context information stored in the server may be used or executed by other terminals connecting to a ubiquitous network.
A conventional context-aware technique is disclosed in the proceedings of “Improving Level of Service for Mobile Users Using Context-Awareness” issued by “P. Couder and A. M. Kermarrec” in IEEE Symposium on Reliable Distributed System pp. 24-33, 1999. This proceeding suggests a mode representing a contextual object (CO) in order to process context awareness.
FIG. 1 is a diagram illustrating the configuration of a conventional context-aware system.
Referring to FIG. 1, the system includes a client 100 and a server 200. The server 200 serves as an information server to store and manage contextual objects and respond to a request from the client 100.
The client 100 includes a detection/notification layer 130 for detecting a situation and notifying a high-level layer of the situation by monitoring the system and a network, an adaptation layer 120 for instructing to select and store context information to be managed and processed, and an application layer 110 interworked with the adaptation layer 120.
The application layer 110 is the highest-level layer and shows a processing result dependent on a context in an adaptive system and sends attribute information to a context manager 122.
In the adaptation layer 120, a contextual object manager 121 manages a data structure for all information about contextual objects currently used by each application, and the context manager 122 receives information about a context change in a current circumference when the detection/notification layer 130 detects the context change. A selection manager 123 filters unnecessary information so that an optimal result is obtained from a current context based on inclination or preference contained in a user profile.
The detection/notification layer 130 detects a change in the context of the system or network dependent on a user's interests and a circumferential environment, converts low-level information to a high-level event, and notifies the adaptation layer 120 of the high-level event.
For example, when the contextual object is defined for a user's ID, the context-aware system can select a proper circumference depending on a user's location, a language, a browser type, and a communication circumference, and show a suitable web document to the user.
This conventional technique suggests the structure of the context-aware system, but it suggests neither an explicit client-side process, a structure of a context-aware server, a context information storing method, nor a searching module. Furthermore, the conventional technique has neither a client-server communication capability nor a proxy module function, and thus is unable to perform sufficient retransmission and caching upon network failure.
Another conventional technique is disclosed in the proceedings of “The anatomy of a Context-aware application” issued by “Aby Harter, Any Hopper, Pete Steggles, Andy Ward, and Paul Webster”, Wireless Networks Vol. 8, Issue 2/3, pp. 187-197, 2002. This conventional technique suggests the structure of a system using the space information as in FIG. 2 in order to detect the location of a mobile terminal in a building.
FIG. 2 is a schematic diagram illustrating a conventional method for tracking a location of a terminal.
Referring to FIG. 2, a base station 310 can recognize movement of a mobile terminal 320 using receivers A, B and C, recognize a new location of the mobile terminal 320 using receivers C, D and E, and perform new processing corresponding to the new location. In this case, the base station uses only a space indexing system when confirming only a simple location of the mobile terminal, but accesses a database of a server when storing, reading and processing context information.
To solve problems with the system shown in FIG. 1 using space information as in FIG. 2, a system as shown in FIGS. 3 and 4 is suggested.
FIG. 3 is a diagram illustrating the configuration of a conventional system for providing ubiquitous-based context information providing service.
Referring to FIG. 3, the system includes sensor nodes 410, context-aware middleware 420 interworked with the sensor nodes 410 and connected to sensor networks, and a context-aware server 430 for providing an information providing service to a user based on information received from the context-aware middleware 420.
The sensor nodes 410 detect and collect a change in service circumference (context information such as location, temperature/humidity, facility utilization, and the like) in real time and send the detected change to the context-aware middleware 420 connected to the sensor network via ad-hoc routing configuration.
The context-aware middleware 420 sends to the context-aware server 430 a service context information storing request containing the user's context information from the sensor nodes 410 in order to store the user's context information in the context-aware server 430. The context-aware middleware 420 receives a service request from the user, checks the user's service preference, the state of the user's device, circumferential context information and the like, and requests the context-aware server 430 to provide the service.
The context-aware server 430 stores the user's context information resulting from the service context information storing request received via the context-aware middleware 420, and provides the service based on the stored user's context information in response to the service request received via the context-aware middleware 420.
The configuration of the sensor node will now be described in greater detail with reference to FIG. 4. FIG. 4 is a diagram illustrating details of a sensor node in a conventional system for providing ubiquitous-based context information providing service.
Refeffing to FIG. 4, the sensor node 410 includes a tag sensor 411 attached to a user or a device as a service object for sensing a user's situation in real time; detecting sensors 412 for sensing a signal from the tag sensor 411 to recognize the user's location, and routing active service data such as a service request from the user and passive service data without user's intervention such as illegal intrusion detection to a sink sensor 413; and the sink sensor 413 for collecting the active service data and passive service data from the detecting sensors 412, sending the data to the context-aware middleware 420, and controlling a state of the detecting sensors 412.
The tag sensor 411 is attached to the user or the device as a service object. The tag sensor 411 may be mounted inside or outside the device. In order to provide context-aware based service, a user's location is first recognized. The location is recognized by calculating a coordinate using information communicated between the tag sensor 411 attached to the user and the detecting sensor 412 attached to the building. Specifically, the detecting sensor 412 sends a signal to any of the tag sensors 411 through wireless communication such as ZIGBEE® communication and super-broadband wireless communication, and the tag sensor 411 calculates its own location coordinate using location information received from three or more detecting sensors 412 and returns the location coordinate to the detecting sensor 412 so that the context-aware server 430 recognizes the location.
On the contrary, the tag sensor 411 may send a signal to the external detecting sensor 412 and the detecting sensors 412 may calculate the location using the signal. In this case, the location information of the tag sensor 411 is one of contexts, i.e., context information in the sensor network.
The context information refers to any type of information that characterizes existence (e.g., people, places, and objects) associated with interaction between a user and an object, as described above. The context information includes resource information from a user's terminal having a calculating capability and circumferential information varying with user's behavior.
The context information, including the location information from the tag sensors 412, is sent to the context-aware server 430 via the detecting sensors 412 in a network topology. In this case, when the detecting sensors 411 are able to process the collected context information, they may process the context information by themselves instead of sending it to the context-aware server 430.
Meanwhile, a network topology for delivering the collected context information from the tag sensor 411 is divided into a sensor layer including only the detecting sensors 412 for sensing information required for service, and a header sensor layer for summarizing sensed information according to a region, service, and network. The header sensor layer is selected from the above detecting sensor layers.
The information summarized by the header sensor is sent to the sink sensor 413, which serves as a gateway for connecting the sensor network to a context-aware system (i.e., the context-aware middleware and the context-aware server).
The sensors on the same layer freely communicate through wireless communication such as “RF”, “ZIGBEE®” and “UWB”, or through wired communication. The sensors may consist of a group and exchange a control message or data in the group, and a new sensor may be added to the group or any of the sensors may be removed from the group.
As described above, in the conventional technique, user's context information is collected in real time and used to provide optimized service to each user. However, in the case where user-requested service is associated with one or more contexts and there is at least one context, the service itself cannot be provided when the number of the context information for the requested service does not correspond to the number of context information defined for the service (due to malfunction, addition, or removal of any sensor).